/**
 * 1.本代码为云笔记web端开发小组共同拥有。
 * 2.组内成员有 聂道鑫、徐斌强、何瑞、钟倩。
 * 3.联系方式：442342707@qq.com
 */
package com.yunbiji.interceptor;

import com.jfinal.aop.Interceptor;
import com.jfinal.core.ActionInvocation;
import com.jfinal.core.Controller;
import com.yunbiji.render.MyCaptchaRender;

/**
 * 验证码拦截器类
 * @author 聂道鑫
 *
 */
public class MyCaptchaRenderInterceptor implements Interceptor
{

	public void intercept(ActionInvocation ai)
	{

		Controller c=ai.getController();
		String inputRandomCode = c.getPara("captcha");
        boolean validate = MyCaptchaRender.validate(c, inputRandomCode);
         
		/**
		 * 如果validate为true说明验证码输入正确
		 */
		if(validate)
		{
			ai.invoke();
		}
		else
		{
			/**
			 * 对登录界面的验证码进行验证错误后的处理
			 */
			if(ai.getMethodName().equals("login"))
			{
				c.setAttr("errorCaptcha", "验证码错误，请重新输入");
				c.keepPara("passwd","username").render("login.html");
			}
			/**
			 * 对注册界面的验证码进行验证错误后的处理
			 */
			else if(ai.getMethodName().equals("reg"))
			{
				c.setAttr("errorRegisterCaptcha", "验证码错误，请重新输入");
				c.keepPara("name","email","qq","tel").render("register.html");
			}
		}
	}
}
